Saving Plan vs. Reserved Instance บน AWS ต่างกันยังไง บล็อกนี้มีคำตอบ!
จากบล็อกที่แล้วที่แนนมาเล่าเกี่ยวกับ EC2 Reserved Instance ไป หลายๆคนอาจจะสงสัยว่าแล้วมันต่างกับ Saving Plan ยังไง วันนี้แนนก็จะมาตอบข้อสงสัยของทุกคนเองค่ะ!
AWS Pricing Calculator
ก่อนอื่นก็จะขอมาแนะนำเว็บไซต์ของ AWS สำหรับใครที่อยากคำนวณค่าใช้จ่ายของ EC2 คร่าวๆ สามารถลองเข้าไปดูและคำนวณได้ที่หน้าเพจของ AWS Pricing Calculator ซึ่งในบล็อกนี้แนนก็จะใช้ Pricing Calculator ในส่วนของ Pricing strategy มาประกอบการอธิบายด้วยค่ะ
จะเห็นได้ว่ามีรูปแบบการคิดค่าบริการที่หลากหลาย แนนก็จะขอแบ่งเป็น 3 กลุ่ม ตาม 3 สีที่ไฮไลท์ไว้นะคะ มีทั้งแบบ On-demand , Reserved Instance และ Saving Plan ที่จะมีเงื่อนไขหรือส่วนลดที่แตกต่างกันออกไป ซึ่งจะแนะนำต่อไปในบล็อกนี้ค่ะ
ในส่วนของ On-demand คือรูปแบบการคิดค่าบริการตามการใช้งาน ดังนั้นจึงไม่จำเป็นต้องงจอง Reservation term(ระยะเวลาการจอง) และ Payment options(รูปแบบการจ่ายเงิน)
แต่ถ้าเราเลือกแบบที่ไม่ใช่ On-demand จำเป็นต้องระบุ Reservation term และ Payment options ด้วยค่ะ ตามในรูปด้านบนเลย
Reserved Instance คืออะไร?
การแจ้งจองใช้งานอินสแตนซ์ EC2 ล่วงหน้าเป็นระยะเวลา 1 หรือ 3 ปี สามารถช่วยประหยัดค่าใช้จ่ายลงไปได้สูงสุดถึง 72% โดยเปอร์เซ็นต์ส่วนลดจะขึ้นอยู่กับ ลักษณะการใช้งาน ระยะเวลาการจอง และวิธีชำระเงิน
แบ่งเป็น 2 ประเภทย่อย คือ
▶ Standard Reserved Instance
- จำเป็นต้องกำหนดสเปคของอินสแตนซ์ โดยไม่สามารถเปลี่ยนได้ตลอดสัญญาการใช้งาน
▶ Convertible Reserved Instances
- จำเป็นต้องกำหนดสเปคของอินสแตนซ์ แต่สามารถเปลี่ยนได้ตลอดสัญญาการใช้งานโดยมีเงื่อนไขคือต้องเปลี่ยนเป็นสเปคที่ราคาสูงกว่าหรือเท่ากับของเดิม
สามารถเข้าไปอ่านเพิ่มเติมเกี่ยวกับ Reserved Instance ได้ที่บล็อกนี้เลยนะคะ → ชวนมาประหยัดค่าใช้จ่ายให้มากขึ้นด้วยการใช้ EC2 Reserved Instances!
Saving Plan คืออะไร?
การแจ้งจองใช้งานอินสแตนซ์ล่วงหน้าเป็นระยะเวลา 1 หรือ 3 ปี สามารถช่วยประหยัดค่าใช้จ่ายลงไปได้สูงสุดถึง 72% โดยเปอร์เซ็นต์ส่วนลดจะขึ้นอยู่กับ ลักษณะการใช้งาน ระยะเวลาการจอง และวิธีชำระเงิน เช่นเดียวกันกับ Reserved Instance เลย แต่จุดแตกต่างที่สำคัญคือ Saving plan จะได้รับส่วนลดตามสัดส่วนเมื่อใช้งานถึงชั่วโมงที่เรา commit ไว้
Compute Saving Plan
แบ่งเป็น 2 ประเภทย่อย
▶ ช่วยลดค่าใช้จ่ายสูงสุด 66%
▶ ไม่จำเป็นต้องกำหนดสเปคอินสแตนซ์ ไม่ว่าจะเป็น Instances type, Region, Availability Zone หรือ Operating system ใดๆเลย อีกทั้งสามารถเปลี่ยนสเปคอินสแตนซ์เหล่านี้ได้ตลอด จะเปลี่ยน Instances type หรือจะย้าย Region ก็ได้ เรียกได้ว่ามีความยืดหยุ่นมากที่สุด!
จะเห็นได้ว่าในส่วนของเงื่อนไข ไม่มีช่องให้เราเลือก Instance type หรือ Region เลย
▶ นอกจากจะใช้งานกับ Amazon EC2 แล้ว Compute saving plan นี้ ยังใช้กับ Amazon Fargate, Amazon Lambda ได้อีกด้วย
EC2 Saving Plan
▶ ช่วยลดค่าใช้จ่ายสูงสุด 72%
▶ จำเป็นต้องระบุ Instances family หรือกลุ่มประเภทอินสแตนส์ โดยเราสามารถเลือกเป็นกลุ่มใหญ่ไว้ก่อน แล้วค่อยเลือก Instance type หรือชื่ออินสแตนซ์ที่เจาะจงลงไปในภายหลังได้
อย่างเช่นในรูปที่ยกมาด้านล่างนี้ จะเห็นได้ว่าเราเลือกเพียงแค่กลุ่มอินสแตนซ์ไว้ก่อนได้ เช่น กลุ่มประเภทอินสแตนซ์ m5
และเราสามารถเลือกชื่ออินสแตนซ์ที่ระบุสเปคของอินสแตนซ์แบบเจาะจงลงไปในภายหลังได้ค่ะ
▶ จำเป็นต้องระบุ Region โดยไม่สามารถเปลี่ยนแปลงได้ตลอดการทำสัญญาใช้งาน
▶ ในส่วนของ Availability Zone และ Operating system ยังคงความยืดหยุ่น สามารถเปลี่ยนแปลงได้ตลอด
จะเห็นได้ว่าจำเป็นต้องเลือก Instance type หรือ Region ไว้ตั้งแต่ก่อนเริ่มเปิดใช้งาน
ตารางเปรียบเทียบระหว่าง Compute Saving Plan และ EC2 Saving Plan
Compute saving plan | EC2 saving plan | |
---|---|---|
Discount | 66% | 72% |
Instance types | เปลี่ยนได้ | เปลี่ยนไม่ได้ *ต้องระบุ Instance family |
Region | เปลี่ยนได้ | เปลี่ยนไม่ได้ |
Availability Zone | เปลี่ยนได้ | เปลี่ยนได้ |
Operating systems | เปลี่ยนได้ | เปลี่ยนได้ |
มาสรุปกันอีกรอบ อะไรคือ Instances type? อะไรคือ Instance family?
Instance family คือกลุ่มประเภทอินสแตนซ์ แบ่งออกตามจุดประสงค์การใข้งาน อย่างเช่น กลุ่มการใช้งานทั่วไป กลุ่มที่เน้นการประมวลผล หรือกลุ่มที่เน้นหน่วยความจำ โดยปัจจุบันมีกลุ่มอินสแตนซ์ให้เลือกใช้ได้กว่า 50 กลุ่มเลย
Instances type คือชื่ออินสแตนซ์ ที่ระบุสเปคของอินสแตนซ์เอาไว้ ซึ่งจะเริ่มต้นชื่อด้วยตัวอักษรของกลุ่มประเภทอินสแตนซ์ และตามด้วยรายละเอียดเกี่ยวกับสเปคของอินสแตนซ์นั้นๆ
ปัจจุบันมีให้เราเลือกใช้ได้มากกว่า 400 รายการเลย เรียกได้ว่าสามารถเลือกใช้ให้ตรงตามความต้องการได้อย่างแน่นอนค่ะ!
→ ยกตัวอย่างให้เห็นภาพ อย่างเช่นในกลุ่มประเภทอินสแตนซ์ m5 ซึ่งเป็นกลุ่มอินสแตนซ์สำหรับงานทั่วไปที่ได้ยกตัวอย่างไปเมื่อสักครู่นี้ ก็จะมีประเภทอินสแตนซ์ย่อยๆมนกลุ่มอีกมากมาย เช่น m5.large (2CPU 8G Memory) / m5.8xlarge (32CPU 128G Memory) เป็นต้นค่ะ
Reserved instance vs. Saving plan
จุดที่ต่างกัน
▶ การกำหนดอินสแตนซ์ vs. การกำหนดจำนวนชั่วโมงใช้งาน
- Reserved Instances คือการจองใช้งานอินสแตนซ์ โดยจำเป็นต้องกำหนดสเปคอินสแตนซ์ไว้เลย แต่สำหรับ Saving plan คือการกำหนดจำนวนชั่วโมงที่จะใช้อินสแตนซ์ต่อเดือนเป็นระยะเวลา 1 หรือ 3 ปี และชำระเงินตามจำนวนชั่วโมงที่เราได้กำหนดไว้ ซึ่งชั่วโมงที่เรากำหนดนี้จะได้รับส่วนลด ทำให้ราคาถูกกว่าแบบ on-demand แต่อย่างไรก็ดี หากเราใช้งานจริงไม่ถึงตามที่แจ้งกับ AWS ไว้ ก็ยังคงต้องเสียค่าบริการตามจำนวนชั่วโมงที่จองไว้
เหมือนกับการที่เราเช่าห้องคาราโอเกะ ร้านหนึ่งคิดราคาโดยใช้หน่วยเป็นจำนวนคนเข้าใช้ห้อง อีกร้านหนึ่งคิดราคาโดยใช้หน่วยเป็นจำนวนชั่วโมงที่จะเช่า หรือถ้าจะอธิบายให้ง่ายๆก็คือการใช้หน่วยวัดสำหรับจ่ายเงินแตกต่างกันนั้นเอง
▶ สามารถใช้ได้กับบริการของ AWS ที่แตกต่างกัน
- Reserved Instances ใช้ได้กับ Amazon EC2, Elasticsearch, Amazon RDS, and RedShift
- Compute Savings Plans รองรับ Amazon EC2, AWS Fargate, and AWS Lambda
- EC2 Savings Plans รองรับการจองใช้งานกับ EC2 เท่านั้น
จุดที่เหมือนกัน
▶ ระยะเวลาการทำสัญญาใช้งาน 1 หรือ 3 ปี
▶ วิธีการเลือกชำระเงิน 3 แบบให้เลือก
- คือ Pay everything upfront ชำระล่วงหน้าเต็มจำนวน/ Partial payment upfront ชำระล่วงหน้าบางส่วน/ Pay nothing upfront ไม่ต้องชำระล่วงหน้า
▶ Convertible Reserved Instances ให้ส่วนลดและมีเงื่อนไขการใช้งานที่คล้ายกับ Compute Savings Plans
▶ EC2 Instance Saving Plans ให้ส่วนลดและมีเงื่อนไขการใช้งานที่คล้ายกับ Standard Reserved Instances
คำแนะนำการจอง
1. เลือกอินสแตนซ์ที่ต้องการจอง เช่น อยากจองใช้งาน Database ก็ต้องจองแบบ Reserved Instance เพราะไม่สามารถใช้กับแผนอื่นได้
2. เลือกความยืดหยุ่นที่ต้องการจอง ต้องดูว่าในการใช้งานของเรา จำเป็นต้องเปลี่ยนสเปคบ่อยไหม อย่างเช่น หากเรากำลังทดสอบระบบอยู่ ทำให้อาจจะต้องเปลี่ยนสเปคบ่อยเพื่อหาสเปคที่เหมาะสมที่สุด ก็อาจจะต้องเลือกเป็นแผน Saving plan ที่มีความยืดหยุ่นมากที่สุดนั่นเองค่ะ
สรุป
ตารางสรุปความแตกต่าง
Standard Reserved instance | Convertible Reserved instance | EC2 Saving Plan | Compute Saving plan | |
---|---|---|---|---|
Discount | สูงสุด 72% | สุงสุด 54% | สูงสุด 72% | สูงสุด 66% |
Instance types | ต้องระบุและเปลี่ยนไม่ได้ | เปลี่ยนเป็นอินสแตนซ์ที่ราคาเท่าเดิมหรือมากขึ้นได้ | ต้องระบุ Instance family | เปลี่ยนแปลงได้ตลอด |
Region | Specific | Specific | Specific | All region |
Availability Zone | เปลี่ยนได้ | เปลี่ยนได้ | เปลี่ยนได้ | เปลี่ยนได้ |
Operating systems | เปลี่ยนไม่ได้ | เปลี่ยนได้ | เปลี่ยนได้ | เปลี่ยนได้ |
สุดท้ายนี้ แนนทำตารางสรุปเงื่อนไขโดยภาพรวมของ Reserved instance และ Saving Plan ไว้แล้ว จะเห็นได้ว่า บริการที่มีความยืดหยุ่นสูงที่สุดคือ Compute Saving plan ส่วนบริการที่ได้รับส่วนลดมากที่สุด 72% คือ Standard Reserved instance และ EC2 Saving Plan ที่มีข้อแตกต่างกันในเรื่องของความสามารถในการเปลี่ยนระบบปฏิบัติการเท่านั้นค่ะ
แนนก็หวังว่าบล็อกนี้จะช่วยให้ทุกคนได้เข้าใจคอนเซปต์ของ Saving Plan มากขึ้น เพื่อจะได้สามารถนำไปใช้ให้เหมาะกับโปรเจคการทำงานของตัวเองกันมากขึ้นด้วยนะคะ
ผู้เขียน: สริตา ทวีเติมสกุล (แนน)
บรรณาธิการ: จิราภรณ์ สว่างอารมณ์ (จิ๋ว)
อ้างอิง
ชวนมาประหยัดค่าใช้จ่ายให้มากขึ้นด้วยการใช้ EC2 Reserved Instances!
reserved instances vs aws saving plans
savings plans vs reserved-instances
AWS เปิดตัว Savings Plan ระบบจองใช้งาน EC2 ที่ยืดหยุ่นกว่า Reserved Instance
comparison between savings plans and reserved instances